﻿using System;
using System.Collections.Generic;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.pp.processor.type.comm;
using SharpSqlAnalyzer.stmt;

namespace SharpSqlAnalyzer.pp.stmtformatter.type.comm
{
	// Token: 0x02000204 RID: 516
	public class CreateTriggerStmtFormatter : AbstractStmtFormatter
	{
		// Token: 0x06001208 RID: 4616 RVA: 0x00317B17 File Offset: 0x00315D17
		public virtual void addParameterProcessor(AbstractProcessor p)
		{
			if (this.parameterListProcessors == null)
			{
				this.parameterListProcessors = new List<AbstractProcessor>();
			}
			this.parameterListProcessors.Add(p);
		}

		// Token: 0x06001209 RID: 4617 RVA: 0x00317B38 File Offset: 0x00315D38
		protected internal override void doFormat(TCustomSqlStatement stmtArg)
		{
			TStoredProcedureSqlStatement tstoredProcedureSqlStatement = stmtArg as TStoredProcedureSqlStatement;
			this.runProcessor<TStoredProcedureSqlStatement>(this.SpecialProcessors, tstoredProcedureSqlStatement);
			if (tstoredProcedureSqlStatement.ParameterDeclarations != null)
			{
				this.runProcessor<TParameterDeclarationList>(this.parameterListProcessors, tstoredProcedureSqlStatement.ParameterDeclarations);
			}
		}

		// Token: 0x040013D7 RID: 5079
		private IList<AbstractProcessor> parameterListProcessors;
	}
}
